main(){
  Payment p=new AliPay();
  p.pay(100);

//多态：父类的引用指向子类的对象
  Payment p1=new WeChatPay();
  p1.pay(100);
  Payment p2=new UnionPay();
  p2.pay(100);



}
//抽象类 就是定义类的标准，规范
abstract class Payment{
  //抽象方法  没有方法体
  void pay(double amount);

}
//实现类，就是抽象类的方法
class AliPay implements Payment{
  @override
  void pay(double amount) {
    print('支付宝支付了$amount');
  }
}
//实现类，就是抽象类的方法
class WeChatPay implements Payment{
  @override
  void pay(double amount) {
    print('微信支付了$amount');
  }
}
//实现类，就是抽象类的方法
class UnionPay implements Payment{
  @override
  void pay(double amount) {
    print('银联支付了$amount');
  }
}

